/**
 *	This file is a part of the Xeres system. ---------------------------
 *		Xeres 2007
 *	Copyright(C) 2006 Zhao Yukun Corp. All rights reserved.
 *	Contact : chaos.chiao@gmail.com
 *	--------------------------------------------------------------------
 	\file	<py_boost_decl.h>
	\path	~/src/python/
    \date	2007/05/03
	\desc	boost.python decl header.
 */

#pragma once

#include "config/config.h"
#include "xeres.h"

#ifndef	BOOST_STATIC_LIB
#define BOOST_STATIC_LIB
#endif // BOOST_STATIC_LIB

#ifndef	BOOST_PYTHON_STATIC_LIB
#define BOOST_PYTHON_STATIC_LIB
#endif // BOOST_PYTHON_STATIC_LIB

#ifndef BOOST_ALL_NO_LIB
#define	BOOST_ALL_NO_LIB
#endif // BOOST_ALL_NO_LIB

#pragma warning(disable:4819)
#pragma warning(disable:4267)

#ifndef _PYXERES
#ifndef Py_BUILD_CORE
#define	Py_BUILD_CORE
#endif // Py_BUILD_CORE

#ifndef Py_NO_ENABLE_SHARED
#define	Py_NO_ENABLE_SHARED		0
#endif // Py_NO_ENABLE_SHARED

#ifndef MS_NO_COREDLL
#define	MS_NO_COREDLL
#endif // MS_NO_COREDLL

#else

#define Py_ENABLE_SHARED 1

#endif

#if (defined _DEBUG) && (!defined _PYXERES)
#define Py_DEBUG
#endif

// python
#if (defined _PYXERES)
#	ifdef _DEBUG
#		define	UNDEF_DEBUG
#		undef _DEBUG
#	endif
#endif
#include <Python.h>
#if (defined _PYXERES)
#	ifdef UNDEF_DEBUG
#		define _DEBUG
#		undef UNDEF_DEBUG
#	endif
#endif

// boost.python config.
#define BOOST_PYTHON_NO_PY_SIGNATURES		1

#include "boost/python.hpp"
